.PHONY: all clean

CYGPROF_DIR = ../
CFLAGS += -g -finstrument-functions
INCFLAG += -I$(CYGPROF_DIR)

all:
	## static library
	gcc $(CFLAGS) -c -o testlib.o testlib.c
	gcc $(CFLAGS) -c -o cyg-profile.o $(CYGPROF_DIR)cyg-profile.c
	ar rs libtest.a testlib.o cyg-profile.o

	## shared library
	gcc $(CFLAGS) -fpic -c -o testlib.o testlib.c
	gcc $(CFLAGS) -fpic -c -o gotplt.o gotplt.c
	gcc $(CFLAGS) -fpic -c -o cyg-profile.o $(CYGPROF_DIR)cyg-profile.c
	gcc -shared -Wl,-soname,libmytest.so -o libmytest.so testlib.o gotplt.o cyg-profile.o

	## executable
	gcc $(CFLAGS) $(INCFLAG) -o test_a -L./ test.c -ltest
	gcc $(CFLAGS) $(INCFLAG) -o test_so -L./ test_so.c -lmytest -ldl -lelf

	#mipsel-24kv2r2-linux-gnu-gcc $(CFLAGS) -o test.mips test.c cyg-profile.c

clean:
	rm -f test_* test.mips *.o *.a *.so
